Internet protocol address resolution

ABSTRACT

A first edge node in a first site network receives an Internet Protocol (IP) address resolving request packet from a device in the first site network. The first edge node replaces a source Media Access Control (MAC) address of an Ethernet frame header and a sender MAC address in a packet body of the IP address resolving request packet with the MAC address of the first edge node. The first edge node forwards the IP address resolving request packet to a second site network via a tunnel linking the first site network and the second site network.

BACKGROUND

Data communications in a conventional network may be Internet Protocol(IP) data communications based on Layer 3 IP addresses. However, IPhosts in a same network segment are often in a same Layer 2 network, andthese IP hosts (a Personal Computer (PC), a server, etc.) areinterconnected by a switching device to form a Layer 2 communicationnetwork, so as to meet communication demands of hosts in the network.Two hosts, which are communicating with each other, may perform acommunication in the manner of Layer 2 traffic forwarding, afterresolving Layer 2 and Layer 3 addresses. The switching device mayforward Layer 2 traffic, by identifying a source Media Access Control(MAC) address and a target MAC address in a Layer 2 packet header of thetraffic.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flowchart illustrating a method for resolving IP addressesin an overlay network, in accordance with an example of the presentdisclosure.

FIG. 2 is a flowchart illustrating a method for forwarding data in anoverlay network, in accordance with an example of the presentdisclosure.

FIG. 3 is a schematic diagram illustrating a structure of an edge nodein an overlay network, in accordance with an example of the presentdisclosure.

FIG. 4 is a schematic diagram illustrating a structure of an edge nodein an overlay network, in accordance with another example of the presentdisclosure.

FIG. 5 is a schematic diagram illustrating a structure of an edge nodein a first site network, in accordance with an example of the presentdisclosure.

FIG. 6 is a schematic diagram illustrating a structure of an edge nodein a second site network, in accordance with an example of the presentdisclosure.

DETAILED DESCRIPTIONS

For simplicity and illustrative purposes, the present disclosure isdescribed by referring to examples. In the following description,numerous specific details are set forth in order to provide a thoroughunderstanding of the present disclosure. It will be readily apparenthowever, that the present disclosure may be practiced without limitationto these specific details. In other instances, some methods andstructures have not been described in detail so as not to unnecessarilyobscure the present disclosure. As used throughout the presentdisclosure, the term “includes” means includes but not limited to, theterm “including” means including but not limited to. The term “based on”means based at least in part on. In addition, the terms “a” and “an” areintended to denote at least one of a particular element.

Along with expansion of a network scale and new demands on reliabilityand redundancy backup deployment, nowadays most enterprise networks anddata center networks thereof are likely to be deployed across multiplephysical sites located in different geographical locations. These sitesare often connected by Layer 3 links to form a Layer 3 communicationnetwork among the sites. Data of communication traffic among sites maybe forwarded, by identifying a source IP address and a destination IPaddress in a Layer 3 packet header of the data.

Deployment of a Layer 2 network in each of the physical sites may be notextended to another site, since it is blocked by a Layer 3 network. Manyapplications supportable in a Layer 2 network, such as dynamic resourcesallocation and management, free migration of a virtual machine(migration process is transparent to a user and the IP address may benot changed), may be not implemented among multiple physical sitesacross the Layer 3 network.

Overlay networks, such as the Ethernet Virtualization Interconnection(EVI) technique, may connect Layer 2 networks in geographicallydispersed physical sites together, by establishing a Layer 2 tunnel overthe Layer 3 network connecting the sites. Thus the tunnel connects edgedevices of the geographically dispersed physical sites with a virtuallayer 2 connection. This enables Layer 2 network deployment across thephysical sites, by crossing a Layer 3 core network (CN), i.e.,applications of various Layer 2 services across the Layer 3 network maybe supported.

Overlay networks, such as EVI, may use a “MAC in IP” technique, such asa Layer 2 Virtual Private Network (VPN) technique based on an IP corenetwork (CN). The overlay network may maintain Layer 3 routing and Layer2 forwarding information at an edge device of a site, without changingthe internal network of the site or the CN.

An entire overlay network may include site networks, an overlappingnetwork and a CN. The basic concepts of the overlay network areintroduced in brief in the following.

A site network is a Layer 2 network having an independent servicefunction, which may be connected to the CN via one or more edge devices.The site network may mainly include hosts and a switching device. Theedge device may provide a function of Layer 2 interconnection amongsites.

The overlapping network is a virtual network established among edgedevices of the site networks, which may provide Layer 2 interconnectionamong the site networks. The site networks may notify each other ofinformation of Layer 2 MAC addresses in the respective site network viathe overlapping network. Subsequently, multiple sites may beinterconnected to form a larger Layer 2 forwarding network.

The CN is a network, which may provide interconnection among the sitenetworks. The CN may be mainly borne by a Layer 3 forwarding device.

An edge device is a switching device located at an edge of a sitenetwork, which may perform the overlay function (for example EVI). Theedge device may operate as a Layer 2 device at the side of the site,while may operate as a Layer 3 device at the side of the CN. The edgedevices mainly provide Layer 2 interconnection among the site networks.Specifically speaking, the edge devices may implement mapping andforwarding of a packet from a site network to a tunnel and from thetunnel to a site network.

An overlay link (e.g. EVI link) is a bidirectional virtual channelbetween a pair of edge devices in a same overlay network instance (e.g.same EVI instance), and is to implement transparent transmission of dataof sites between the edge devices. The channel may be borne by a tunnel(e.g. an EVI tunnel). One tunnel may bear multiple overlay links. Anoverlay link may be identified, by using IP addresses of an overlay-linkinterface and a remote edge device.

While EVI is discussed in the following as an example, it is to beunderstood that the principles discussed herein may be applied to othertypes of overlay network as well. An EVI tunnel may be a generic routingencapsulation (GRE) tunnel, which may bear an EVI link. One EVI tunnelmay bear multiple EVI links. An EVI tunnel is a point to multipointtunnel. An edge device of a site may establish connections with edgedevices of multiple neighbor sites via one EVI tunnel. Each connectionmay correspond to one EVI link.

A certain change will occur in organization and management of anoriginal Layer 2 MAC address forwarding table, after an EVI Layer 2 VPNacross the Layer 3 network is formed. At this time, each edge deviceneeds to manage not only a MAC address forwarding table of the localsite, but also information of remote MAC addresses issued by other edgesdevices at remote ends of an EVI tunnel, so as to implement local andremote forwarding of Layer 2 traffic at an edge node. In such a case,Layer 2 data traffic may be forwarded between the local site and remotesites across the Layer 3 network, via connections of EVI tunnels amongthe edge nodes.

Thus, it can be seen that in a case where there are many physical sitesand hosts in the EVI network, the switching device of each edge nodeneeds to maintain data of MAC addresses of the entire Layer 2 VPNnetwork. The MAC addresses exert a great information capacity pressureon edge nodes, and there is repeated management of the MAC addresses bythe edge nodes.

As can be seen, each edge node in the entire EVI network needs toacquire information of MAC addresses in all of remote site networks, soas to ensure correct forwarding of traffic in all directions. Thus,searching out and forwarding of traffic may be implemented, bymaintaining a complete Layer 2 forwarding table carrying information oflocal and remote MAC addresses.

Thus, it can be seen that the capacity pressure on the edge node exertedby the MAC address forwarding table may correspond to the number of theMAC addresses in the entire EVI Layer 2 VPN. And for each edge node inthe entire EVI network, there is the same problem of storage pressureexerted by the MAC address forwarding table.

Data forwarding among site devices in an overlay network may beimplemented with the following two processes.

Process I refers to an IP address resolving process, in which a MACaddress of a device of a remote site may be acquired.

Process II refers to a data forwarding process. Data communication withthe device of the remote site may be performed, after the MAC address ofthe device of the remote site is acquired.

The two processes are respectively described in the following.

FIG. 1 is a flowchart illustrating a method for resolving IP addressesin an overlay network, in accordance with an example of the presentdisclosure. As shown in FIG. 1, the method may include the followingblocks.

In block 101, a host 1 in a site network 1 of an overlay (e.g. EVI)network is to communicate with a host 2 in a site network 2 of theoverlay (e.g. EVI) network. When there is no address resolution protocol(ARP) entry corresponding to the IP address of host 2 in an ARP table,an ARP request packet may be transmitted. In the packet body, the senderIP address is the IP address of host 1, the sender MAC address is theMAC address of host 1, the target IP address is the IP address of host2, and the target MAC address is a MAC address of all zeros.

The ARP request packet in this block is a broadcast packet. The sourceMAC address of the Ethernet frame header of the broadcast packet is theMAC address of host 1, and the destination MAC address of the Ethernetframe header of the broadcast packet is a broadcast address of all ‘F’.

In block 102, an edge node 1 of site network 1 may receive the ARPrequest packet, perform ARP learning by using the ARP request packet,and establish an ARP entry for host 1. The IP address in the ARP entryestablished is the sender IP address in the packet body. The MAC addressin the ARP entry established is the sender MAC address in the packetbody. Edge node 1 may issue the ARP entry into the ARP table. Since thedestination MAC address of the packet is the broadcast address, edgenode 1 may replace both the sender MAC address and the source MACaddress of the Ethernet frame header in the packet with the MAC addressof edge node 1, and then forward the packet to all of remote edge nodesvia an EVI tunnel.

In this example, edge node 1 may respectively perform a tunnelencapsulation (e.g. an EVI encapsulation) for the ARP request packet,based on the IP address of each of the remote edge nodes stored by edgenode 1, and then transmit each encapsulated ARP request packet via acorresponding tunnel. The source IP address of a tunnel encapsulationheader is the IP address of edge node 1 (specifically, the IP address ofan EVI tunnel interface corresponding to the EVI link interface). Thedestination IP address of the tunnel encapsulation header is the IPaddress of a remote edge node (specifically, the IP address of a peerEVI tunnel interface corresponding to the EVI link interface).

When there is already an ARP entry for the IP address of host 1 in theARP table of edge node 1, edge node 1 may update the existing ARP entryas the newly established ARP entry.

Edge nodes of different site networks may notify each other of theirrespective IP addresses and identifiers of the site networks to whichthey belong through the Intermediate System to Intermediate System(IS-IS) protocol after starting. In this way, each edge node will savethe IP addresses of the other edge nodes and the identifiers of the sitenetworks to which the other edge nodes belong. In this block, when edgenode 1 saves the IP addresses of n remote edge nodes, edge node 1 mayperform the tunnel encapsulation (e.g. an EVI encapsulation) for the ARPrequest packet n times. The encapsulation of each time may correspond toone remote edge node. That is, the destination IP address of each tunnelencapsulation header (e.g. each EVI encapsulation header) may point toone remote edge node. In this way, the ARP request will respectivelyreach the n remote edge nodes.

In block 103, an edge node of any remote site network, assumed to be anedge node 2 of a site network 2, may receive the EVI-encapsulated ARPrequest packet, determine that the source IP address of the tunnelencapsulation header (e.g. an EVI encapsulation header) of the packet isthe IP address of site network 1, acquire the source MAC address of theEthernet frame header of the packet, and establish a correspondingrelationship between the source MAC address and site network 1 in a MACaddress forwarding table, after removing the tunnel encapsulation (e.g.an EVI encapsulation) of the packet. Since the destination MAC addressof the packet is the broadcast address, edge node 2 may broadcast thepacket in site network 2.

In block 104, host 2 in site network 2 may receive the ARP requestpacket, find that the target IP address in the packet body is the IPaddress of host 2, and accordingly establish an ARP entry. In theestablished ARP entry, the IP address is the sender IP address in thepacket, and the MAC address is the sender MAC address in the packet.Host 2 may issue the ARP entry into the ARP table. Then, host 2 mayreturn an ARP response packet. The sender IP address and sender MACaddress of the ARP response packet are respectively the IP address andMAC address of host 2. The target IP address and target MAC address inthe ARP response packet are respectively the sender IP address and thesender MAC address of the ARP request packet.

Specifically speaking, in the ARP entry established by host 2, the IPaddress is the IP address of host 1, and the MAC address is the MACaddress of edge node 1. In the packet body of the ARP response packet,the target IP address is the IP address of host 1, and the target MACaddress is the MAC address of edge node 1. The destination MAC addressof the Ethernet frame header of the packet is the MAC address of edgenode 1, and the source MAC address is the MAC address of host 2.

In block 105, edge node 2 may receive the ARP response packet, performARP learning by using the ARP response packet, establish an ARP entryfor host 2. In the ARP entry established, the IP address is the senderIP address of the packet, and the MAC address is the sender MAC addressof the packet. Edge node 2 may issue the ARP entry into the ARP table,replace the sender MAC address of the packet body of the packet and thesource MAC address of the Ethernet frame header with the MAC address ofedge node 2. Edge node 2 may find that the destination MAC address ofthe Ethernet frame header of the packet is the MAC address of remotesite network 1, and perform the tunnel encapsulation (e.g. an EVIencapsulation) for the packet. The destination IP address of the tunnelencapsulation header (e.g. an EVI encapsulation header) is the IPaddress of edge node 1 of site network 1. And then, edge node 2 maytransmit the packet via a tunnel (e.g. an EVI tunnel).

Since in block 103 after receiving the ARP request packet, edge node 2may establish the source MAC address of the Ethernet frame header of thepacket, that is, a corresponding relationship between the MAC address ofedge node 1 and site network 1. Thus, in this block, after receiving theARP response packet, edge node 2 may learn that the destination MACaddress of the Ethernet frame header of the packet is the MAC address ofsite network 1, based on the corresponding relationship.

When there is an ARP entry for the IP address of host 2 in the ARP tableof edge node 2, edge node 2 may update the existing ARP entry as thenewly established ARP entry.

In block 106, edge node 1 may receive the ARP response packet, determinethat the source IP address of the tunnel encapsulation header (e.g. anEVI encapsulation header) of the packet is the IP address of sitenetwork 2, remove the tunnel encapsulation (e.g. an EVI encapsulation)of the packet, and save a corresponding relationship between the sourceMAC address of the Ethernet frame header of the packet and site network2 in a MAC address forwarding table. Since the destination MAC addressof the Ethernet frame header of the packet is the MAC address of edgenode 1, edge node 1 may search out in its own ARP entries a MAC addresscorresponding to the target IP address of the packet body of the packet,and forward the packet to host 1, based on a searching result.Specifically speaking, edge node 1 may modify the destination MACaddress of the packet as a MAC address corresponding to the target IPaddress of the packet body, and then forward the packet.

In block 107, host 1 may receive the ARP response packet, establish anARP entry, in which the IP address is the sender IP address of thepacket body of the packet, and the MAC address is the sender MAC addressof the packet body of the packet. Host 1 may issue the ARP entry into anARP table.

As can be seen, the IP address in the ARP entry established by host 1 isthe IP address of host 2, and the MAC address is the MAC address of edgenode 2. Here, the MAC address of host 2 acquired by host 1 is the MACaddress of edge node 2 in fact.

Host 1 may perform data communication with host 2, after acquiring theMAC address of “host 2” through the process shown in FIG. 1.

FIG. 2 is a flowchart illustrating a method for forwarding data in anoverlay (e.g. EVI) network, in accordance with an example of the presentdisclosure. As shown in FIG. 2, the method may include the followingblocks.

In block 201, when to transmit data to host 2 in site network 2, host 1in site network 1 of the overlay network may search out in its own ARPentries a corresponding MAC address, based on the IP address of host 2,and construct a packet for the data. In the packet constructed, thedestination IP address is the IP address of host 2, and the destinationMAC address is the MAC address searched out. And then, host 1 maytransmit the packet for the data.

The destination MAC address of the packet is the MAC address of edgenode 2 of site network 2 in fact.

In block 202, edge node 1 of site network 1 may receive the packet forthe data, find that the destination MAC address of the packet is the MACaddress of site network 2, and perform the tunnel encapsulation (e.g. anEVI encapsulation) for the packet. The destination IP address of thetunnel encapsulation header (e.g. an EVI encapsulation header) is the IPaddress of edge node 2 of site network 2. And then, edge node 1 maytransmit the encapsulated packet for the data via a tunnel (e.g. an EVItunnel).

In block 203, edge node 2 of site network 2 may receive the packet forthe data, remove the tunnel encapsulation (e.g. an EVI encapsulation),search in the ARP table for an ARP entry corresponding to thedestination IP address of the packet, since the destination MAC addressof the Ethernet frame header of the packet for the data is the MACaddress of edge node 2. Edge node 2 may forward the packet to host 2,based on the MAC address in the ARP entry searched out.

As can be seen from the examples shown in FIG. 1 and FIG. 2, in thepresent disclosure an edge node does not need to save and maintain theMAC address of respective host device in remote site networks, and mayneed to save and maintain the MAC addresses of host devices in the localsite network as well as the MAC addresses of edge nodes of remote sitenetworks, which is different from functions of an edge node in the priorart. In the prior art, an edge node needs to save and maintain the MACaddresses of the devices in the local site network and the remote sitenetworks. Thereby, a storage pressure on the edge node is greatlyreduced, while normal and accurate forwarding of data may be ensured.

The examples shown in FIG. 1 and FIG. 2 are for IPv4 data transmission.IPv6 data transmission may be executed between hosts or between routers.

When the IPv6 data transmission is data transmission between hosts, thefollowing replacements are to be made to the examples shown in FIG. 1and FIG. 2.

1) Replace an ARP request with a Neighbor Solicitation (NS) and replacean ARP response with a Neighbor Advertisement (NA).

2) Replace an ARP entry with a Neighbor Discovery (ND) entry.

When the IPv6 data transmission is data transmission between routers,the following replacements are to be made to the examples shown in FIG.1 and FIG. 2.

1) Replace a host with a router.

2) Replace an ARP request with a Router Solicitation (RS), and replacean ARP response with a Router Advertisement (RA).

3) Replace an ARP entry with an ND entry.

As can be seen from the above, in the examples of the presentdisclosure, edge node 1 may receive an IP address resolving requestpacket, which specifically may be an ARP request packet, a NeighborSolicitation packet or a Router Solicitation packet, from a device(e.g., host 1) in the site network.

Then, edge node 1 may replace both the source MAC address of theEthernet frame header and the sender MAC address in the packet body ofthe IP address resolving request packet with the MAC address of edgenode 1, forward the packet to all of remote edge nodes via a tunnel(e.g. an EVI tunnel), such that each remote edge node may establish anentry, which is configured to record a corresponding relationshipbetween the site network where the packet is from and the source MACaddress of the Ethernet frame header of the packet, in a MAC addressforwarding table.

In the above examples, edge node 2 may establish a correspondingrelationship between the MAC address of edge node 1 and site network 1,after receiving the IP address resolving request packet via the tunnel(e.g. an EVI tunnel). Thus, after receiving an IP address resolvingresponse packet returned by host 2, edge node 2 may search in the MACaddress forwarding table based on the destination MAC address of thepacket, and forward the packet to edge node 1 via the tunnel (e.g. anEVI tunnel). Finally, the packet may be forwarded to host 1. Thereby,forwarding of the IP address resolving packet across sites may beimplemented, such that the edge nodes do not need to maintaininformation of MAC addresses of devices in remote site networks anylonger.

FIG. 3 is a schematic diagram illustrating a structure of an edge nodein an overlay (e.g. EVI) network, in accordance with an example of thepresent disclosure. As shown in FIG. 3, the edge node mainly includes anIP address resolution processing module 31, a MAC address forwardingtable module 32, an IP address resolving table module 33 and a dataforwarding module 34.

The IP address resolution processing module 31 may receive an IP addressresolving request packet from a device in the site, establish an IPaddress resolving entry, based on the sender IP address and the senderMAC address of the packet body of the packet, issue the IP addressresolving entry to the IP address resolving table module 33, replaceboth the sender MAC address of the packet body of the packet and thesource MAC address of the Ethernet frame header of the packet with theMAC address of this node, respectively perform the tunnel encapsulation(e.g. an EVI encapsulation) for the IP address resolving request packet,based on the IP address of each remote edge node stored by this node.The source IP address of the tunnel encapsulation header (e.g. an EVIencapsulation header) is the IP address of this node. The destination IPaddress of the tunnel encapsulation header (e.g. an EVI encapsulationheader) is the IP address of a remote edge node. The IP addressresolution processing module 31 may further transmit each encapsulatedIP address resolving request packet via a corresponding tunnel (e.g. anEVI tunnel).

The IP address resolution processing module 31 may receive an IP addressresolving request packet via a tunnel (e.g. an EVI tunnel), determine,based on a corresponding relationship between identifiers of sitenetworks and IP addresses of edge nodes stored by this node, theidentifier of the remote site network to which the source IP address ofthe tunnel encapsulation header (e.g. an EVI encapsulation header) ofthe packet belong, remove the tunnel encapsulation (e.g. an EVIencapsulation) of the packet, record a corresponding relationshipbetween the source MAC address of the Ethernet frame header of thepacket and the identifier of the remote site network in the MAC addressforwarding table module 32, and broadcast the packet in the site.

The IP address resolution processing module 31 may receive an IP addressresolving response packet from a device in the site, establish an IPaddress resolving entry, based on the sender IP address and the senderMAC address of the packet body of the packet, issue the IP addressresolving entry to the IP address resolving table module 33, replaceboth the sender MAC address of the packet body of the packet and thesource MAC address of the Ethernet frame header of the packet with theMAC address of this node, determine, based on the correspondingrelationship between MAC addresses and identifiers of remote sitenetworks stored by the MAC address forwarding table module 32, theremote site network to which the destination MAC address of the Ethernetframe header of the packet belong, and perform the tunnel encapsulation(e.g. an EVI encapsulation) for the packet. The destination IP addressof the tunnel encapsulation header (e.g. an EVI encapsulation header) isthe IP address of an edge node of the determined remote site network.And then, the IP address resolution processing module 31 may forward thepacket via a tunnel (e.g. an EVI tunnel).

The IP address resolution processing module 31 may receive an IP addressresolving response packet via the tunnel (e.g. an EVI tunnel),determine, based on IP addresses of edge nodes of each site networkstored by this node, the remote site network to which the source IPaddress of the tunnel encapsulation header (e.g. an EVI encapsulationheader) of the packet belong, remove the tunnel encapsulation (e.g. anEVI encapsulation) of the packet, save a corresponding relationshipbetween the source MAC address of the Ethernet frame header of thepacket and the identifier of the remote site network in the MAC addressforwarding table module 32, search in the IP address resolving tablemodule 33, based on the target IP address of the packet body of thepacket, to search out the corresponding MAC address, and forward thepacket to a device in the site based on the MAC address searched out,such that the device may establish an IP address resolving entry, basedon the sender IP address and the sender MAC address of the packet bodyof the packet.

Here, when the overlay network is an IPv4 network, the IP addressresolving request is an ARP request, the IP address resolving responseis an ARP response, and the IP address resolving entry is an ARP entry.And, when the overlay network is an IPv6 network, the IP addressresolving request is an NS or RS, the IP address resolving response isan NA or RA, and the IP address resolving entry is an ND entry.

The MAC address forwarding table module 32 may save MAC addressforwarding entries, which may include a corresponding relationshipbetween the identifier of a site network and MAC addresses in the sitenetwork.

The IP address resolving table module 33 may store IP address resolvingentries.

The data forwarding module 34 may receive a data packet from a device inthe site, determine, based on a corresponding relationship betweenidentifiers of site networks and MAC addresses in the site networksstored by the MAC address forwarding table module 32, the remote sitenetwork to which the destination MAC address of the packet belong,perform the tunnel encapsulation (e.g. an EVI encapsulation) for thepacket. The destination IP address of the tunnel encapsulation header(e.g. an EVI encapsulation header) is the IP address of an edge node ofthe determined remote site network. The data forwarding module 34 mayforward the encapsulated packet to the remote edge node via a tunnel(e.g. an EVI tunnel). The data forwarding module 34 may receive a datapacket via the tunnel (e.g. an EVI tunnel), remove the tunnelencapsulation (e.g. an EVI encapsulation) of the packet, search in theIP address resolving table module 33 based on the destination IP addressof the packet for the corresponding MAC address, and forward the packetto a device in the site based on the MAC address searched out.

FIG. 4 is a schematic diagram illustrating a structure of an edge nodein an overlay (e.g. EVI) network, in accordance with an example of thepresent disclosure. The edge node mainly includes a processor 41 and amemory 42.

Processor 41 is configured to communicate with memory 42, and to executemachine executable instructions stored in memory 42.

Memory 42 is configured to store a MAC address forwarding table 421, anIP address resolving table 422 and machine executable instructions 423.When being executed by processor 41, the machine executable instructions423 may implement the following blocks. Receive a first IP addressresolving request packet from a device in the site network. Replace boththe source MAC address of the Ethernet frame header and the sender MACaddress of the packet body of the first IP address resolving requestpacket with the MAC address of this node. Forward the packet to all ofremote edge nodes via a tunnel (e.g. an EVI tunnel). Receive a first IPaddress resolving response packet corresponding to the first IP addressresolving request packet returned by a remote device via the tunnel(e.g. an EVI tunnel). Both the destination MAC address of the Ethernetframe header and the target MAC address in the packet body of the firstIP address resolving response packet are the MAC address of this node.Both the source MAC address of the Ethernet frame header and the senderMAC address in the packet body of the first IP address resolvingresponse packet have been replaced with the MAC address of the remoteedge node, before the first IP address resolving response packet isforwarded to the tunnel (e.g. an EVI tunnel) by a remote edge node of aremote site network. Determine the remote site network where the firstIP address resolving response packet comes from. Record a correspondingrelationship between the source MAC address of the Ethernet frame headerof the first IP address resolving response packet and the remote sitenetwork in a MAC address forwarding table. Forward the first IP addressresolving response packet to the corresponding device in the site, suchthat the device may establish an IP address resolving entry in the IPaddress resolving table, based on the sender IP address and the senderMAC address in the packet body.

When being executed by the processor 41, the machine executableinstructions 423 in memory 42 are further configured to implement thefollowing blocks. Acquire the source IP address in the tunnelencapsulation header (e.g. an EVI encapsulation header) of the first IPaddress resolving response packet. Determine, based on a remote sitenetwork corresponding to the source IP address, the remote site networkwhere the first IP address resolving response packet comes from. Recorda corresponding relationship between the source MAC address of theEthernet frame header of the first IP address resolving response packetand the remote site network in the MAC address forwarding table.

When being executed by the processor 41, the machine executableinstructions 423 in memory 42 are further configured to implement thefollowing blocks. Establish an IP address resolving entry, based on thesender IP address and the sender MAC address in the packet body, afterreceiving the first IP address resolving request packet. Determinefirstly whether the destination MAC address of the first IP addressresolving response packet is this node, when to forward the first IPaddress resolving response packet to the corresponding device in thesite. When determining that the destination MAC address of the first IPaddress resolving response packet is this node, search in IP addressresolving entries, based on the target IP address in the packet body,and then forward the first IP address resolving response packet, basedon the MAC address searched out.

When being executed by the processor 41, the machine executableinstructions 423 in memory 42 are further configured to implement thefollowing blocks. Search in the MAC address forwarding table, based onthe destination MAC address of a data packet, when receiving the datapacket from a device in the site. When determining that a remote sitenetwork corresponding to the destination MAC address of the data packet,forward the data packet to the remote site network via a tunnel (e.g. anEVI tunnel). When receiving a data packet via the tunnel (e.g. an EVItunnel), remove the tunnel encapsulation (e.g. an EVI encapsulation) ofthe data packet. When the destination MAC address of the data packet isthis node, search in IP address resolving entries based on thedestination IP address of the data packet, and forward the data packetbased on the MAC address searched out.

When being executed by the processor 41, the machine executableinstructions 423 in memory 42 are further configured to implement thefollowing blocks. Receive a second IP address resolving request packetforwarded by a remote edge node of a remote site network via a tunnel(e.g. an EVI tunnel). Both the source MAC address of the Ethernet frameheader and the sender MAC address in the packet body of the second IPaddress resolving request packet have been replaced with the MAC addressof the remote edge node of the remote site network, before the second IPaddress resolving request packet is forwarded to the tunnel (e.g. an EVItunnel) by the remote edge node. Determine the remote site network wherethe second IP address resolving request packet comes from. Record acorresponding relationship between the source MAC address of theEthernet frame header of the second IP address resolving request packetand the remote site network in the MAC address forwarding table.Broadcast the second IP address resolving request packet in the sitenetwork. Receive a second IP address resolving response packetcorresponding to the second IP address resolving request packet returnedby a device in the site network. The destination MAC address of theEthernet frame header of the second IP address resolving response packetis the MAC address of the remote edge node. Both the source MAC addressof the Ethernet frame header and the sender MAC address in the packetbody of the second IP address resolving response packet are the MACaddress of the device in the site network. Replace both the source MACaddress of the Ethernet frame header and the sender MAC address in thepacket body of the second IP address resolving response packet with theMAC address of this node. Search in the MAC address forwarding table,based on the destination MAC address of the Ethernet frame header of thesecond IP address resolving response packet. Forward the second IPaddress resolving response packet to the corresponding remote sitenetwork via the tunnel (e.g. an EVI tunnel).

When being executed by the processor 41, the machine executableinstructions 423 in memory 42 are further configured to implement thefollowing block. Acquire the source IP address in the tunnelencapsulation header (e.g. an EVI encapsulation header) of the second IPaddress resolving request packet. Determine, based on a remote sitenetwork corresponding to the source IP address, the remote site networkwhere the second IP address resolving request packet comes from. Recorda corresponding relationship between the source MAC address of theEthernet frame header of the second IP address resolving request packetand the remote site network in the MAC address forwarding table.

When being executed by the processor 41, the machine executableinstructions 423 in memory 42 are further configured to implement thefollowing blocks. Establish an IP address resolving entry in the IPaddress resolving table, based on the sender IP address and the senderMAC address in the packet body, after receiving the second IP addressresolving response packet.

There are a variety of examples in practice. For example, the MACaddress forwarding table 421, the IP address resolving table 422 and themachine executable instructions 423 may be respectively stored indifferent memories. Alternatively, the MAC address forwarding table 421and the IP address resolving table 422 may be stored in a memory. Themachine executable instructions 423 may be stored in another memory.

When the overlay network is an IPv4 network, the IP address resolvingrequest is an ARP request, the IP address resolving response is an ARPresponse, and the IP address resolving entry is an ARP entry.

When the overlay network is an IPv6 network, the IP address resolvingrequest is an NS or RS, the IP address resolving response is an NA orRA, and the IP address resolving entry is an ND entry.

FIG. 5 is a schematic diagram illustrating a structure of an edge devicein an overlay (e.g. EVI) network, in accordance with an example of thepresent disclosure. The edge node is located in a first site network ofthe overlay network. As shown in FIG. 5, the edge node may include amemory 52, a processor 51 in communication with the memory 52. Thememory 52 is configured to store a MAC address forwarding table 521, anIP address resolving table 522 and machine executable instructions 523executable by the processor 51.

When being executed by the processor 51, the machine executableinstructions 523 may implement the following blocks. Receive an IPaddress resolving request packet from a device in the first sitenetwork. Replace both the source MAC address of the Ethernet frameheader and the sender MAC address of the packet body of the IP addressresolving request packet with the MAC address of this node. Forward theIP address resolving request packet to a second site network via atunnel connecting the first site network with the second site network.

In an example of the present disclosure, the machine executableinstructions 523 stored in the memory 52 are further configured toimplement the following blocks. Receive an IP address resolving responsepacket corresponding to the IP address resolving request packet returnedby the second site network via the tunnel. Determine the second sitenetwork where the IP address resolving response packet comes from.Record a corresponding relationship between the source MAC address ofthe Ethernet frame header of the IP address resolving response packetand the second site network in the MAC address forwarding table 521.Forward the IP address resolving response packet to a correspondingdevice in the first site network, such that the device may establish anIP address resolving entry in the IP address resolving table 522, basedon the sender IP address and the sender MAC address in the packet bodyof the IP address resolving response packet.

In an example of the present disclosure, the machine executableinstructions 523 in the memory 52 are further configured to implementthe following blocks. After receiving the IP address resolving requestpacket, establish an IP address resolving entry in the IP addressresolving table 522, based on the sender IP address and the sender MACaddress in the packet body of the IP address resolving request packet.When forwarding the IP address resolving response packet to acorresponding device in the first site network, firstly determinewhether the destination MAC address of the IP address resolving responsepacket is the MAC address of this node, if yes, search for an IP addressresolving entry based on the target IP address in the packet body of theIP address resolving response packet, and forward the IP addressresolving response packet based on the MAC address searched out.

In an example of the present disclosure, the machine executableinstructions 523 in memory 52 are further configured to implement thefollowing blocks. When receiving a data packet from a device in thefirst site network, search in the MAC address forwarding table 521 basedon the destination MAC address in the data packet. When determining thatthe destination MAC address of the data packet corresponding to thesecond site network, transmit the data packet to the second site networkvia the tunnel. When receiving the data packet via the tunnel, remove atunnel encapsulation of the data packet. When determining that thedestination MAC address of the data packet is the MAC address of thisnode, search for the IP address resolving entry based on the destinationIP address of the data packet, and forward the data packet based on theMAC address searched out.

FIG. 6 is a schematic diagram illustrating a structure of an edge nodein an overlay (e.g. EVI) network, in accordance with an example of thepresent disclosure. The edge node is located in a second site network ofthe overlay network. As shown in FIG. 6, the edge node includes a memory62, and a processor 61 in communication with the memory 62. The memory62 is configured to store a MAC address forwarding table 621, an IPaddress resolving table 622, and machine executable instructions 623executable by the processor 61. When being executed by the processor 61,the machine executable instructions 623 are configured to implement thefollowing blocks. Receive an IP address resolving request packetforwarded by a first site network, via a tunnel connecting the secondsite network with the first site network. Determine the first sitenetwork where the IP address resolving request packet comes from. Recorda corresponding relationship between the source MAC address of theEthernet frame header of the IP address resolving request packet and thefirst site network in the MAC address forwarding table 621, andbroadcast the IP address resolving request packet within the second sitenetwork. Receive an IP address resolving response packet correspondingto the IP address resolving request packet returned by a device in thesecond site network. Replace both the source MAC address of the Ethernetframe header in the IP address resolving response packet and the senderMAC address in the packet body in the IP address resolving responsepacket with the MAC address of this node. Search in the MAC addressforwarding table 621, based on the destination MAC address of theEthernet frame header of the IP address resolving response packet, andtransmit the IP address resolving response packet to the first sitenetwork via the tunnel.

In an example of the present disclosure, the machine executableinstructions 623 in the memory 62 are further configured to implementthe following blocks. Obtain a source IP address in a tunnelencapsulation header of the IP address resolving request packet.Determine the first site network where the IP address resolving requestpacket comes from, based on the first site network corresponding to thesource IP address. Record a corresponding relationship between thesource MAC address of the Ethernet frame header of the IP addressresolving request packet and the first site network in the MAC addressforwarding table 621.

In an example of the present disclosure, the machine executableinstructions 623 in the memory 62 are further configured to implementthe following blocks. After receiving the IP address resolving responsepacket, establish an IP address resolving entry in the IP addressresolving table 622, based on the sender IP address and the sender MACaddress in the packet body of the IP address resolving response packet.

The memory mentioned in the examples of the present disclosure mayinclude a floppy disk, a hard disk, a magneto-optical disk, an opticaldisk (such as compact disc(CD)-read-only memory (ROM), CD-recordable(CD-R), CD-rewritable (CD-RW), digital versatile disc (DVD)-ROM,DVD-random access memory (RAM), DVD-RW, DVD+RW), a magnetic tape, anonvolatile memory card and ROM.

By employing the technical solution of the present disclosure, an entrystoring pressure on an edge node may be reduced, when normal forwardingof data in an overlay network (e.g. an EVI network) is ensured.

1. A Method for resolving Internet Protocol (IP) addresses for use in anoverlay network comprising multiple site networks, comprising:receiving, by a first edge node of a first site network, an IP addressresolving request packet from a device in the first site network;replacing, by the first edge node, both a source Media Access Control(MAC) address of an Ethernet frame header and a sender MAC address in apacket body of the IP address resolving request packet with the MACaddress of the first edge node, and forwarding the IP address resolvingrequest packet to a second site network via a tunnel linking the firstsite network and the second site network.
 2. The method according toclaim 1, further comprising: receiving, by the first edge node, an IPaddress resolving response packet corresponding to the IP addressresolving request packet returned by the second site network via thetunnel; determining, by the first edge node, the second site networkwhere the IP address resolving response packet comes from, recording acorresponding relationship between the source MAC address of theEthernet frame header of the IP address resolving response packet andthe second site network in a MAC address forwarding table, andforwarding the IP address resolving response packet to a correspondingdevice in the first site network, such that the corresponding deviceestablishes an IP address resolving entry based on the sender IP addressand the sender MAC address in the packet body of the IP addressresolving response packet.
 3. The method according to claim 1, furthercomprising: acquiring, by the first edge node, the source IP address ina tunnel encapsulation header of the IP address resolving responsepacket, determining, based on the second site network corresponding tothe source IP address, the second site network where the IP addressresolving response packet comes from, and recording a correspondingrelationship between the source MAC address of the Ethernet frame headerof the IP address resolving response packet and the second site networkin the MAC address forwarding table.
 4. The method according to claim 1,further comprising: establishing, by the first edge node, an IP addressresolving entry based on the sender IP address and the sender MACaddress in the packet body of the IP address resolving request packet,after receiving the IP address resolving request packet; whereinforwarding the IP address resolving response packet to the correspondingdevice in the first site network comprises: searching, by the first edgenode, in IP address resolving entries based on the target IP address inthe packet body of the IP address resolving response packet, andforwarding the IP address resolving response packet based on the MACaddress searched out, when determining that the destination MAC addressof the IP address resolving response packet is the MAC address of thefirst edge node.
 5. The method according to claim 2, further comprising:receiving, by the first edge node, a data packet from a device in thefirst site network, searching in the MAC address forwarding table basedon the destination MAC address of the data packet, when determining thatthe second site network corresponds to the destination MAC address ofthe data packet, forwarding the data packet to the second site networkvia the tunnel; removing, by the first edge node, a tunnel encapsulationof the data packet, after receiving the data packet via the tunnel; whendetermining that the destination MAC address of the data packet is theMAC address of the first edge node, searching in IP address resolvingentries based on the destination IP address of the data packet, andforwarding the data packet based on the MAC address searched out.
 6. AMethod for resolving Internet Protocol (IP) addresses for use in anoverlay network comprising multiple site networks, comprising:receiving, by a second edge node in a second site network, an IP addressresolving request packet forwarded by a first site network via a tunnellinking the second site network and the first site network; determining,by the second edge node, the first site network where the IP addressresolving request packet comes from, recording a correspondingrelationship between a source media access control (MAC) address of anEthernet frame header of the IP address resolving request packet and thefirst site network in a MAC address forwarding table, and broadcastingthe IP address resolving request packet within the second site network;receiving, by the second edge node, an IP address resolving responsepacket corresponding to the IP address resolving request packet returnedby a device in the second site network; searching, by the second edgenode, in the MAC address forwarding table, based on a destination MACaddress in the Ethernet frame header of the IP address resolvingresponse packet, and transmitting the IP address resolving responsepacket to the first site network corresponding to the destination MACaddress of the IP address resolving response packet via the tunnel,after replacing the source MAC address of the Ethernet frame header ofthe IP address resolving response packet and a sender MAC address in apacket body of the IP address resolving response packet with the MACaddress of the second edge node.
 7. The method according to claim 6,further comprising: determining, by the second edge node, the first sitenetwork where the IP address resolving request packet comes from, andrecording a corresponding relationship between the source MAC address ofthe Ethernet frame header of the IP address resolving request packet andthe first site network in the MAC address forwarding table.
 8. Themethod according to claim 6, further comprising: establishing, by thesecond edge node, an IP address resolving entry based on the sender IPaddress and the sender MAC address in the packet body of the IP addressresolving response packet, after receiving the IP address resolvingresponse packet.
 9. An edge node located in a first site network of anoverlay network, wherein the edge node comprises a memory, and aprocessor in communication with the memory, the memory is to store aMedia Access Control (MAC) address forwarding table, an InternetProtocol (IP) address resolving table, and machine executableinstructions which are executable by the processor to: receive an IPaddress resolving request packet from a device in the first sitenetwork, replace both a source MAC address of an Ethernet frame headerand a sender MAC address of a packet body of the IP address resolvingrequest packet with the MAC address of the edge node, and forward the IPaddress resolving request packet to a second site network via a tunnellinking the first site network and the second site network.
 10. The edgenode according to claim 9, wherein the machine executable instructionsare further to: receive an IP address resolving response packetcorresponding to the IP address resolving request packet returned by thesecond site network via the tunnel, determine the second site networkwhere the IP address resolving response packet comes from, record acorresponding relationship between the source MAC address of theEthernet frame header of the IP address resolving response packet andthe second site network in the MAC address forwarding table, and forwardthe IP address resolving response packet to a corresponding device inthe first site network, such that the corresponding device establishesan IP address resolving entry in the IP address resolving table, basedon the sender IP address and the sender MAC address in the packet bodyof the IP address resolving response packet.
 11. The edge node accordingto claim 9, wherein when being executed by the processor, the machineexecutable instructions are further to: after receiving the IP addressresolving request packet, establish an IP address resolving entry in theIP address resolving table, based on the sender IP address and thesender MAC address in the packet body of the IP address resolvingrequest packet; when forwarding the IP address resolving response packetto the corresponding device in the first site network, determine firstlywhether the destination MAC address of the IP address resolving responsepacket is the MAC address of the edge node; after determining that thedestination MAC address of the IP address resolving response packet isthe MAC address of the edge node, search in the IP address resolvingentries, based on the target IP address in the packet body of the IPaddress resolving response packet, and forward the IP address resolvingresponse packet, based on the MAC address searched out.
 12. The edgenode according to claim 10, wherein when being executed by theprocessor, the machine executable instructions are further to: afterreceiving a data packet from a device in the first site network, searchin the MAC address forwarding table based on the destination MAC addressof the data packet, when determining that the destination MAC address ofthe data packet corresponds to the second site network, forward the datapacket to the second site network via the tunnel; when receiving a datapacket via the tunnel, remove a tunnel encapsulation of the data packet,search in IP address resolving entries based on the destination IPaddress of the data packet, and forward the data packet based on the MACaddress searched out, after determining that the destination MAC addressof the data packet is the MAC address of the edge node.
 13. An edge nodelocated in a second site network of an overlay network, wherein the edgenode comprises a memory, and a processor in communication with thememory, the memory is to store a media access control (MAC) addressforwarding table, an Internet Protocol (IP) address resolving table, andmachine executable instructions which are executable by the processorto: receive an IP address resolving request packet forwarded by a firstsite network via a tunnel linking the second site network and the firstsite network; determine the first site network where the IP addressresolving request packet comes from, record a corresponding relationshipbetween a source MAC address of an Ethernet frame header of the IPaddress resolving request packet and the first site network in the MACaddress forwarding table, and broadcast the IP address resolving requestpacket in the second site network; receive an IP address resolvingresponse packet corresponding to the IP address resolving request packetreturned by a device in the second site network, replace both the sourceMAC address of the Ethernet frame header and the sender MAC address inthe packet body of the IP address resolving response packet with the MACaddress of the edge node, search in the MAC address forwarding tablebased on the destination MAC address of the Ethernet frame header of theIP address resolving response packet, and forward the IP addressresolving response packet to the first site network corresponding to thedestination MAC address of the IP address resolving response packet viathe tunnel.
 14. The edge node according to claim 13, wherein when beingexecuted by the processor, the machine executable instructions arefurther to: determine the first site network where the IP addressresolving request packet comes from, record a corresponding relationshipbetween the source MAC address of the Ethernet frame header of the IPaddress resolving request packet and the first site network in the MACaddress forwarding table.
 15. The edge node according to claim 13,wherein when being executed by the processor, the machine executableinstructions are further to: establish an IP address resolving entry inthe IP address resolving table, based on the sender IP address and thesender MAC address in the packet body of the IP address resolvingresponse packet, after receiving the IP address resolving responsepacket.